﻿// -----------------------------------------------------------------------------
// $HeadURL: https://embedded-systems.dnsalias.com:443/repositories/WWW.Eric.Company/BRANCHES/TRUNK/SOLUTIONS/SmartTrader/PROJECTS/SDKs.Science.Mathematics/src.Templates/TemplateBase.cs $
// $LastChangedRevision: 272 $
// $LastChangedDate: 2009-12-19 23:21:49 +0100 (Sat, 19 Dec 2009) $
// $LastChangedBy: /CN=Eric-DELAGE $
// -----------------------------------------------------------------------------

namespace COM.CodePlex.Quantum.SDKs.Finance
{
    using System;

    /// <summary>
    /// (TODO)
    /// </summary>
    internal abstract class
    TemplateBase :
        TemplateIF,
        System.IDisposable
    {
        //// CONSTANT(S) ///////////////////////////////////////////////////////

        //// //////////////////////// STATIC ///////////////////////////////////

        //// OBJECT LIFE CYCLE /////////////////////////////////////////////////

        /// <summary>
        /// Initializes static members of the TemplateBase class.
        /// </summary>
        static
        TemplateBase()
        {
        }

        //// INDEXER(S) ////////////////////////////////////////////////////////
        //// PROPERTY(IES) /////////////////////////////////////////////////////
        //// METHOD(S) /////////////////////////////////////////////////////////
        //// DELEGATE(S) ///////////////////////////////////////////////////////
        //// EVENT(S) //////////////////////////////////////////////////////////

        //// /////////////////////// DYNAMIC ///////////////////////////////////

        /// <summary>
        /// (TODO)
        /// </summary>
        private Boolean disposed; // = false; done by the runtime.

        //// OBJECT LIFE CYCLE /////////////////////////////////////////////////

        /// <summary>
        /// Initializes a new instance of the TemplateBase class.
        /// </summary>
        protected
        TemplateBase()
        {
        }

        // .....................................................................

        /// <summary>
        /// (TODO)
        /// </summary>
        public
        void
        Dispose()
        {
            this.Dispose(true);
            GC.SuppressFinalize(this);
        }

        // .....................................................................

        /// <summary>
        /// (TODO)
        /// </summary>
        /// <param name="disposing">(TODO)</param>
        protected virtual
        void
        Dispose(
            Boolean disposing)
        {
            if (this.disposed == false)
            {
                if (disposing == true)
                {
                    // Dispose
                    // managed
                    // resources.
                }

                // Dispose
                // unmanaged
                // resources.
            }

            this.disposed = true;
        }

        // .....................................................................

        /// <summary>
        /// Finalizes an instance of the TemplateBase class.
        /// </summary>
        ~
        TemplateBase()
        {
            this.Dispose(false);
        }

        //// INDEXER(S) ////////////////////////////////////////////////////////
        //// PROPERTY(IES) /////////////////////////////////////////////////////
        //// METHOD(S) /////////////////////////////////////////////////////////
        //// DELEGATE(S) ///////////////////////////////////////////////////////
        //// EVENT(S) //////////////////////////////////////////////////////////
    }
}

// ------------------------------- END OF FILE ---------------------------------
